<?php
class EditGroupForm extends Form
{
	var $group = array();
	
	function EditGroupForm()
	{
		Form::Form('EditGroupForm');

		$id  = Url::getParamInt('id', 0);
		
		if($id)
		{
			$this->group = DB::select("user_groups", "id=$id");
			
			if(!$this->group)
			{
				Url::redirect_current();
			}
		}
	}
	
	function draw()
	{
		global $display;

		$id  = Url::getParamInt('id', 0);
		
		$item = null;
		
		if($id)
		{
			$item = $this->group;
		}

		$msg = $this->showFormErrorMessages(1);
		
		if($msg == ''){
			$msg = $this->showFormSuccesMessages(1);
		}
		
		$display->add('msg', $msg);

		$display->add('mode', (($id > 0) ? 'Sửa' : 'Tạo'));
		
		$display->add('item', $item);
		
		$this->beginForm();
		$display->output('EditGroup');
		$this->endForm();
	}
	
	function on_submit()
	{
		$name 	= Url::getParam('name', '');
		$brief 	= Url::getParam('brief', '');
		$des 	= Url::getParam('des', '');

		$id 	= Url::getParamInt('id', 0);
		
		if($brief != '')
		{
			$arr = array(
						 'name' 	=> $name,
						 'brief' 	=> $brief,
						 'des' 		=> $des,
						 );

			if(!in_array($brief, array('root', 'admin', 'mod')))			
			{
				if($id == 0)//Add mới
				{
					$exist = DB::exists("SELECT id FROM user_groups WHERE brief = '$brief'");
					
					if(!$exist)
					{
						$arr['created'] = TIME_NOW;
						
						DB::insert('user_groups',$arr);
						User::get_system_groups(1);
						
						Url::redirect_current();
					}
					else
					{
						$this->setFormError('', "Nhóm này quyền này đã tồn tại");
					}
				}
				else
				{
					$exist = DB::exists("SELECT id FROM user_groups WHERE brief = '$brief' AND id!=$id");
					
					if(!$exist)
					{
						DB::update('user_groups',$arr, "id=$id");
						User::get_system_groups(1);
						
						Url::redirect_current();
					}
					else
					{
						$this->setFormError('brief', "Định danh cho nhóm này quyền này đã tồn tại!");
					}
				}
			}
			else
			{
				$this->setFormError('brief', "Định danh cho nhóm này quyền này đã tồn tại!");
			}
		}
		else
		{
			$this->setFormError('name', 'Chưa nhập tên định danh nhóm');
		}
	}
}
?>